package org.linlinjava.litemall.db.dao.order_manage;

import org.apache.ibatis.annotations.Param;
import org.linlinjava.litemall.db.domain.AgedmallCabinet;
import org.linlinjava.litemall.db.domain.AgedmallGoodsEqu;
import org.linlinjava.litemall.db.domain.AgedmallRfidGoodsProduct;
import org.linlinjava.litemall.db.domain.AgedmallScanGuns;
import org.linlinjava.litemall.db.vo.locks.*;
import org.linlinjava.litemall.db.vo.shop.StoreGoodsInventoryDto;

import java.util.List;

/**
 * @author wj
 * @date 2021/8/11 15:36
 */
public interface AgedmallLocksMapper {
    int insertGoodsEquList(List<AgedmallGoodsEqu> list);


    int insertRfidGoodsProductList(List<AgedmallRfidGoodsProduct> list);

    List<RfidGoodsListBack> selectRfidGoodsList(SelectRfidGoodsDto selectRfidGoodsDto);

    int updateRfidGoodsBatch(List<AgedmallRfidGoodsProduct> list);

    int insertCabinetBatch(List<AgedmallCabinet> list);

    List<CabinetListBackDto> selectCabinetList(SelectCabinetDto selectCabinetDto);

    int updateCabinetBatch(List<AgedmallCabinet> list);

    List<CabinetGoodsDetailListDto> selectRfidGoodsListByCabinetId(SelectCabinetGoodsVo selectCabinetGoodsVo);

    List<ScanGunsListDto> selectScanGunsList(SelectScanGunsList selectScanGunsList);

    int insertScanGunsBatch(List<AgedmallScanGuns> list);

    int updateScanGunsBatch(List<AgedmallScanGuns> list);

    Integer getGoodsCategoryId(Integer id);

    List<StoreGoodsInventoryDto> getCabinetGoodsInventory(@Param("id") Integer id);

    List<CanUseCabinetGoodsDto> selectCanUseCabinetGoodsId(@Param("cabinetId")Long cabinetId,@Param("storeId")Long storeId
            ,@Param("goodsId")Long goodsId,@Param("specId")Long specId);
}
